# File: Tokens.rb
# Authors: Jenny Valdez, Jesus Martinez
#     This file contains all the Vectorinox tokens' definitions

require "Token"

class TkNum < Token
    def initialize(line, col, val)
        super(line, col)
        @type = "TkNum"
        @value = val
    end
end

#############################################################

class TkNumID < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkNumID"
    end
end

#############################################################

class TkVec < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkVec"
    end
end

#############################################################

class TkMat < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkMat"
    end
end

#############################################################

class TkString < Token
    def initialize(line, col, val)
        super(line, col)
        @type = "TkString"
        @value = val
    end
end

#############################################################

class TkId < Token
    def initialize(line, col, val)
        super(line, col)
        @type = "TkId"
        @value = val
    end
end

#############################################################

class TkLeftBrace < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkLeftBrace"
    end
end

#############################################################

class TkRightBrace < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkRightBrace"
    end
end

#############################################################

class TkLeftParentheses < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkLeftParentheses"
    end
end

#############################################################

class TkRightParentheses < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkRightParentheses"
    end
end

#############################################################

class TkLeftBracket < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkLeftBracket"
     end
end

#############################################################

class TkRightBracket < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkRightBracket"
     end
end

#############################################################

class TkPeriod < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkPeriod"
     end
end

#############################################################

class TkPlus < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkPlus"
    end
end

#############################################################

class TkMinus < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkMinus"
    end
end

#############################################################

class TkTimes < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkTimes"
    end
end

#############################################################

class TkDiv < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkDiv"
    end
end

#############################################################

class TkModulo < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkModulo"
    end
end

#############################################################

class TkPower < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkPower"
    end
end

#############################################################

class TkLessThan < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkLessThan"
    end
end

#############################################################

class TkGreaterThan < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkGreaterThan"
    end
end

#############################################################

class TkLessThanEqual < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkLessThanEqual"
    end
end

#############################################################

class TkGreaterThanEqual < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkGreaterThanEqual"
    end
end

#############################################################

class TkEqual < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkEqual"
    end
end

#############################################################

class TkNotEqual < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkNotEqual"
    end
end

#############################################################

class TkAt < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkAt"
    end
end

#############################################################

class TkDollar < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkDollar"
    end
end

#############################################################

class TkNot < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkNot"
    end
end

#############################################################

class TkAnd < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkAnd"
    end
end

#############################################################

class TkOr < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkOr"
    end
end

#############################################################

class TkZeroes < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkZeroes"
    end
end

#############################################################

class TkRange < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkRange"
    end
end

#############################################################

class TkEye < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkEye"
    end
end

#############################################################

class TkDefine < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkDefine"
    end
end

#############################################################

class TkOf < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkOf"
    end
end

#############################################################

class TkType < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkType"
    end
end

#############################################################

class TkAs < Token
   def initialize(line, col)
        super(line, col)
        @type = "TkAs"
    end
end

#############################################################

class TkBegin < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkBegin"
   end
end

#############################################################

class TkEnd < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkEnd"
    end
end

#############################################################

class TkVars < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkVars"
    end
end

#############################################################

class TkIf < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkIf"
    end
end

#############################################################

class TkThen < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkThen"
    end
end

#############################################################

class TkElse < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkElse"
    end
end

#############################################################

class TkWhile < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkWhile"
    end
end

#############################################################

class TkDo < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkDo"
    end
end

#############################################################

class TkForeach < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkForeach"
    end
end

#############################################################

class TkIn < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkIn"
    end
end

#############################################################

class TkRead < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkRead"
    end
end

#############################################################

class TkWrite < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkWrite"
    end
end

#############################################################

class TkReturn < Token
    def initialize(line, col)
       super(line, col)
       @type = "TkReturn"
    end
end

#############################################################

class TkAssign < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkAssign"
    end
end

#############################################################

class TkComma < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkComma"
    end
end

#############################################################

class TkSemiColon < Token
    def initialize(line, col)
        super(line, col)
        @type = "TkSemiColon"
    end
end

#############################################################

class TkColon < Token
    def initialize(line, col)
       super(line, col)
       @type = "TkColon"
    end
end

#############################################################

class TkBoolean < Token
    def initialize(line, col, val)
        super(line, col)
        @value = val
        @type = "TkBoolean"
    end
end

#############################################################

class TkExp < Token
    def initialize(line, col)
       super(line, col)
       @type = "TkExp"
    end
end

#############################################################
